---
title: strPolicyList
summary: API reference for strPolicyList.
status: draft
owner: SAIF Corporation
last_reviewed: 2026-08-21
library: SAIF.Business.View.Policy
reference_type: embedded
---

# strPolicyList

This structure is the row carrier returned by the SQL Server policy-list routines inside `clsPolicySecurity`. `GetPolicyListforGroup`, `GetPolicyListForSafetyConsultant`, `GetPolicyListForAgent`, and `GetPolicyListForFeeAuditor` populate it so `PolicyList` can hand back a normalized set of policy identifiers and display names regardless of which user-access path granted visibility under [BR-VP-005](../../business-rules.md#br-vp-005-access-granted-per-user-access-level-matrix).

## Purpose
- Represent one accessible-policy row produced by the security subsystem's BDS queries.
- Package the two user-facing values the authorization layer needs to return together: the policy number and the policy name.
- Precompute a combined display string so policy selectors can render `number - name` without repeating formatting logic.*

## Context
- Namespace: `SAIF.Business.View.Policy`
- Assembly/package: `SAIF.Business.View.Policy` (embedded)

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| `PolicyNum` | `Public PolicyNum As Decimal` | Stores the accessible policy identifier returned by the selected security query. |
| `PolicyName` | `Public PolicyName As String` | Stores the human-readable policy name paired with the accessible policy number. |
| `PolicyNameAndNumber` | `Public PolicyNameAndNumber As String` | Stores the display text built as `<policy number> - <policy name>` for list-style UI presentation.* |
| `New` | `Public Sub New(ByVal inPolicyNum As Decimal, ByVal inPolicyName As String)` | Initializes the row from retrieved policy values and derives the combined display string immediately. |

## Behavioral notes
- This is a mutable VB structure with public fields rather than properties, so callers can update the values after construction if needed.
- The constructor always derives `PolicyNameAndNumber` from the incoming number and name, ensuring consistent formatting across all policy-list retrieval methods.
- `clsPolicySecurity.PolicyList` returns `List(Of strPolicyList)` for agent, policyholder, loss-control, group, and auditor users as part of the access matrix in [BR-VP-005](../../business-rules.md#br-vp-005-access-granted-per-user-access-level-matrix).

## Constraints and usage notes
- Because this is a value type, copies are passed by value unless explicitly passed `ByRef`.
- The structure carries no security metadata beyond the displayable policy identifiers; access decisions are made before rows are returned.

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts.

## Sources
- `SAIF.Business.View.Policy/clsPolicySecurity.vb`
